home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Development / Source / MacStarter (THINK C 5.0⁄6.0) / other applicationProcs files / uncommentedProcs.c < prev   
C/C++ Source or Header  |  1992-10-06  |  3KB  |  135 lines

  1. #include "globals-MacStarter.h"
  2.  
  3. long gEventWaitTime = 10;
  4.  
  5. MenuHandle editMenu, fileMenu;
  6.  
  7. void InitApplication(void);
  8. void UpdateMenus(void);
  9. void DoEditMenu(int itemNum);
  10. void DoFileMenu(int itemNum, int* done);
  11. void DoOtherMenu(int menuID, int itemNum);
  12. void ApplicationIdle(void);
  13. void CleanUpApplication(void);
  14. void AboutBox(void);
  15. void DoNewCommand(void);
  16.  
  17.  
  18. class myWindow : public xWindow {
  19.    virtual void SetDefaults(void);
  20.    virtual void OpenInRect(Str255 title, int left, int top, int right, int bottom);   
  21.    virtual short Close(void);
  22.    virtual void doKey(char ch);
  23.    virtual void doContentClick(Point localPt);
  24.    virtual void adjustToNewSize(void);
  25.    virtual void doRedraw(Rect* badRect);
  26.    virtual void doHScroll(int dh);
  27.    virtual void doVScroll(int dv);
  28.    virtual void doActivate(int active);
  29. };
  30.  
  31. void myWindow::SetDefaults(void) {
  32.    inherited::SetDefaults();
  33. }
  34.  
  35. void myWindow::OpenInRect(Str255 title, int left, int top, int right, int bottom) {
  36.    inherited::OpenInRect(title,left,top,right,bottom);
  37. }
  38.  
  39. short myWindow::Close(void) {
  40.    inherited::Close();
  41. }
  42.  
  43. void myWindow::doKey(char ch) {
  44. }
  45.  
  46. void myWindow::doContentClick(Point localPt) {
  47. }
  48.  
  49. void myWindow::doRedraw(Rect* badRect){
  50. }
  51.  
  52. void myWindow::adjustToNewSize(void) {
  53.    inherited::adjustToNewSize();
  54. }
  55.  
  56.  
  57. void myWindow::doHScroll(int dh) {
  58.    inherited::doHScroll(dh);
  59. }
  60.  
  61. void myWindow::doVScroll(int dv) {
  62.    inherited::doVScroll(dv);
  63. }
  64.  
  65. void myWindow::doActivate(int active) {
  66.    inherited::doActivate(active);
  67. }
  68.  
  69. void InitApplication(void) {
  70.   MenuHandle appleMenu;
  71.   fileMenu = GetMHandle(2);
  72.   editMenu = GetMHandle(3);
  73.   appleMenu = GetMHandle(1);
  74.   SetItem(appleMenu,1,"\pAbout Generic...");
  75.   DoNewCommand();
  76. }
  77.  
  78. void UpdateMenus(void) {
  79.    short i;
  80.    WindowPtr win;
  81.    xWindow *xwin;
  82.    win = FrontWindow();
  83.    if ( win && ((WindowPeek)win)->windowKind < 0 ) {  // Desk accessory window
  84.       EnableItem(editMenu,1);
  85.       for (i=3; i<7; i++)
  86.          EnableItem(editMenu,i);
  87.    }
  88.    else {
  89.       DisableItem(editMenu,1);
  90.       for (i=3; i<7; i++)
  91.          DisableItem(editMenu,i);
  92.    }
  93.    if (win && xWindow::Window2XWindow(win,&xwin)) {
  94.       EnableItem(fileMenu,2);  // Close
  95.    }
  96.    else {
  97.       DisableItem(fileMenu,2);
  98.    }
  99. }
  100.  
  101. void DoEditMenu(int itemNum) {
  102. }
  103.  
  104. void DoFileMenu(int itemNum, int* done) {
  105.    xWindow *win;
  106.    if (itemNum == 4)
  107.       *done = 1;
  108.    else if (itemNum == 1)
  109.       DoNewCommand();
  110.    else if (itemNum == 2 && xWindow::Window2XWindow(FrontWindow(),&win))
  111.       win->Close();
  112. }
  113.  
  114. void DoOtherMenu(int menuID, int itemNum) {
  115. }
  116.  
  117. void ApplicationIdle(void) {
  118. }
  119.  
  120. void CleanUpApplication(void) {
  121. }
  122.  
  123. void AboutBox(void) {
  124.    ParamText( "\pGeneric Application",
  125.               "\pDavid Eck",
  126.               "\pHobart and William Smith College, Geneva NY",
  127.               "\pThis program can be used as a shell for creating Macintosh Applications.");
  128.    Alert(128,0L);
  129. }
  130.  
  131. void DoNewCommand(void) {
  132.    myWindow *win;
  133.    win = new myWindow;
  134.    win->Open("\pSample Window");
  135. }